846B - Math Show - CodeForces Solution


brute force greedy *1800

Please click on ads to support us..

C++ Code:

#include <bits/stdc++.h>
#define int long long
#define fi first
#define se second
#define all(x) (x).begin(), (x).end()

using namespace std;

int32_t main()
{
        ios_base::sync_with_stdio(false);
        cin.tie(NULL);
        int n, k, m;
        cin >> n >> k >> m;
        vector<int> v(k+5);
        for (int i = 1; i <= k; i++) cin >> v[i];
        int ans = 0;
        sort(v.begin() + 1, v.begin() + k + 1);
        for (int i = 0; i <= n; i++) {
                int res = 0;
                for (int j = 1; j <= k; j++) res += i*v[j];
                if (res > m) break;
                int cur = i*(k + 1);
                int sisa = m - res;
                for (int j = 1; j <= k; j++) {
                        if (v[j]*(n - i) <= sisa) {
                                sisa -= v[j]*(n - i);
                                cur += n - i;
                        } else {
                                cur += sisa/v[j];
                                break;
                        }
                }
                ans = max(ans, cur);
        }
        cout << ans << '\n';
        return 0;
}


Comments

Submit
0 Comments
More Questions

119A - Epic Game
703A - Mishka and Game
1504C - Balance the Bits
988A - Diverse Team
1312B - Bogosort
1616B - Mirror in the String
1660C - Get an Even String
489B - BerSU Ball
977C - Less or Equal
1505C - Fibonacci Words
1660A - Vasya and Coins
1660E - Matrix and Shifts
1293B - JOE is on TV
1584A - Mathematical Addition
1660B - Vlad and Candies
1472C - Long Jumps
1293D - Aroma's Search
918A - Eleven
1237A - Balanced Rating Changes
1616A - Integer Diversity
1627B - Not Sitting
1663C - Pōja Verdon
1497A - Meximization
1633B - Minority
688B - Lovely Palindromes
66B - Petya and Countryside
1557B - Moamen and k-subarrays
540A - Combination Lock
1553C - Penalty
1474E - What Is It